<?php

	include("config.php");
    include(INCLUDEDIR."core.php");
	include("acceso.php");
	
	$tpl = new Plantilla();
	$tpl->setPlantilla("tpl.categorias.html");
	$tpl->prepare();
	
	
	if($_GET['accion']=="eliminar") {
		$id_categoria = isset($_GET['idc'])?intval($_GET['idc']):0;
		$id_actual = isset($_GET['a'])?intval($_GET['a']):0;
		$callback = $_SERVER['PHP_SELF']."?idc=".$id_actual;
		$cat = db::getRow("SELECT * FROM categorias WHERE id_categoria = '$id_categoria'");
		if(count($cat)==0) redir($callback,"La categoria indicada no existe",true);
		$hijos = intval(db::ExecuteScalar("SELECT count(*) FROM categorias WHERE id_categoria_padre = '$id_categoria'"));
		if($hijos>0) redir($callback,"Esta categoria tiene sub categorias asociadas",true);
		$public = db::getRow("SELECT * FROM publicaciones WHERE id_categoria = '$id_categoria' LIMIT 1");
		if(count($public)>0) redir($callback,"Esta categoria tiene publicaciones asociadas",true);
		$academia = db::getRow("SELECT * FROM academias WHERE id_categoria = '$id_categoria' LIMIT 1");
		if(count($academia)>0) redir($callback,"Esta categoria tiene academias asociadas",true);
		mysql_query("DELETE FROM categorias WHERE id_categoria = '$id_categoria'");
		redir($callback,"La categoria fue eliminada");
	}
	
	if($_POST['accion']=="agregar_categoria") {
		$id_categoria_padre = intval($_POST['id_categoria_padre']);
		$nombre_categoria = sanitizar($_POST['nombre_c']);
		$id_actual = intval($_POST['id_actual']);
		$callback = $_SERVER['PHP_SELF']."?idc=".$id_actual;
		if(empty($nombre_categoria)) redir($callback,"El nombre de la categoria no puede ser vacio",true);
		$cat = db::getRow("	SELECT * FROM categorias 
							WHERE nombre_categoria like '%$nombre_categoria% 
							AND id_catagoria_padre = '$id_categoria_padre'");
		if(count($cat)>0) redir($callback,"No se pueden duplicar categorias",true);
		$categoria = new genericDB("categorias");
		$categoria->set("nombre_categoria",$nombre_categoria);
		$categoria->set("id_categoria_padre",$id_categoria_padre);
		if($categoria->Save()) {
			redir($callback,"La Categoria fue Agregada");	
		} else {
			redir($callback,"No se pudo salvar la categoria",true);	
		}		
	}
	
	$tpl->newBlock("CATEGORIAFORM");
	
	$idc = isset($_GET['idc'])?intval($_GET['idc']):0;
	$tpl->assign("id_actual",$idc);
	
	$mapa_categoria = MapaCategoria($idc);
	$tpl->assign("mapa_categoria",$mapa_categoria);
	$nivel = NivelCategoria($idc);
	$tpl->assign("nivel",$nivel);
	
	$tpl->assign("nombre_categoria","la pagina principal");
	$tpl->assign("id_categoria",0);
	$tpl->assign("id_categoria_padre",0);
	if($idc>0) {
		$micategoria = db::getRow("SELECT * FROM categorias WHERE id_categoria = '$idc'");				
		foreach($micategoria as $k => $v) $tpl->assign($k,$v);
		
	}

	$query = "SELECT * FROM categorias WHERE id_categoria_padre = '$idc'";
	
	$result = mysql_query($query);
	
	if($result && mysql_num_rows($result)>0) {
		$tpl->assign("titulo_categoria");
		while($cat = mysql_fetch_assoc($result)) {
			$tpl->newBlock("CATEGORIA");
			$id_categoria = intval($cat['id_categoria']);
			$tpl->assign("id_actual",$idc);
			$tpl->assign("comentario","epale!!");
			foreach($cat as $k => $v) $tpl->assign($k,$v);
			$query = "SELECT * FROM categorias WHERE id_categoria_padre = '$id_categoria'";
			$result2 = mysql_query($query);
			if($result2 && mysql_num_rows($result2)>0) {
				while($subcat = mysql_fetch_assoc($result2)) {
					$tpl->newBlock("SUBCATEGORIA");
					foreach($subcat as $k => $v) $tpl->assign($k,$v);
					$tpl->assign("id_actual",$idc);
				}
				mysql_free_result($result2);	
			}				
		}
		mysql_free_result($result);
	}

	$tpl->Mostrar();
?>